This disclosure relates generally to the field of computer databases. More particularly, but not by way of limitation, it relates to a technique for correlating network-based messaging and database transactions.
Computer databases have been an important part of enterprises for decades. Two major types of computer databases are hierarchical databases and relational databases. Relational databases organize data into tables of rows and columns. Hierarchical databases, which were developed prior to relational databases, are arranged into tree-like hierarchical structures representing logical relationships. Hierarchical databases are often used for applications that require high volumes of transactions, such as in the banking and airline industries. The oldest and most recognized currently used hierarchical database is the Information Management System (IMS) developed and marketed by International Business Machines Corporation (IBM).
Historically, IMS databases were accessed by dedicated IBM terminals, and were not accessible to Internet-based application clients. In recent years, however, IBM has introduced a facility known as IMS Connect, which allows Internet-based application clients to access IMS databases. An IMS Connect client may perform transactions against an IMS database using Transport Control Protocol/Internet Protocol (TCP/IP) communications between the client and IMS Connect. The IMS Connect software provides a communications bridge between the client and the native communication protocols used by the IMS database software.
Thus, a client application may, using conventional TCP/IP functionality, establish a TCP connection with the IMS Connect software, then send and receive transaction requests and responses through IMS Connect, as if the client application were directly connected to the IMS database system.
IMS database systems, like many other computer software systems, may collect or log various kinds of data regarding IMS transactions, to allow management of the IMS databases and applications. IMS Connect applications may also log various kinds of data for similar purposes. The logged data generally includes trace and event data that may be used to measure (and thus, tune) the performance of the IMS databases and applications, as well as the computer systems and networks used connect to and execute the software. Response time data, which is data that indicates how long a time lapses between a request for a transaction and a response with the transaction results, may be of great value for such performance measurement purposes.
IMS Connect may log performance data that includes message-related events, such as the time a socket was opened, when a TCP connection was established, when a transaction request was read on the socket, when an IMS transaction request was made to the IMS system, when transaction responses were written to the socket, and when the TCP connection was closed. IMS may log performance data that includes transaction events such as when an IMS application received a transaction request, and when a transaction completed. But database administrators (DBAs) have been unable to correlate the IMS Connect messaging event log data with the IMS transaction log event data. Thus, DBAs have been unable to measure true end-to-end response time for IMS Connect-initiated transactions, without introducing undesirable delays into IMS transactions.
In another embodiment, a computer readable medium is disclosed. The computer readable medium stores instructions for a programmable control device wherein the instructions cause a programmable control device to perform the method described above.
In yet another embodiment, a networked computer system is disclosed. The networked computer system comprises a plurality of computers communicatively coupled, at least one of the plurality of computers programmed to perform at least a portion of the method of described above wherein the entire method described above is performed collectively by the plurality of computers.